1. The Field of the Invention
The present invention pertains to the field of transporting multimedia content. More particularly, the present invention relates to systems, methods, and computer program products for modifying the operation of a multimedia transport system in response to capabilities of a client system.
2. Background and Related Art
The number of homes receiving individualized multimedia content has increased substantially in recent years. This is due to a number of factors, including more advanced and easier to use processing systems, greater access to broadband services in the home, and more interactive video services. In addition, technological advances have allowed these functionalities in progressively smaller computing devices.
Conventional multimedia content services include pay per view (“PPV”) services, which enable a viewer to order and pay for specific programming. Such programming, traditionally a movie or sporting event, was scheduled for broadcast at a predetermined time to those viewers who paid for the programming. However, PPV had many drawbacks for viewers. For example, PPV programming could only take place at the scheduled times. Also, if a viewer had to step away from the viewing area, there was no way to pause and resume the programming.
To meet the problems associated with conventional PPV, video on demand (“VOD”) was developed. As its name implies, VOD allows viewers to access programming “on demand.” Thus, the viewer does not need to wait until predetermined times for programming to start as required by PPV. VOD also includes video cassette recorder (“VCR”)-like functions such as play, record, fast forward, reverse, and pause. This is beneficial to a viewer as she may navigate the program in order to get a richer viewing experience.
However, current implementations of VOD services have certain problems. Video on demand servers are conventionally programmed to send a stream of multimedia content to a client system at a standard transfer rate even though capabilities of client systems may vary. For instance, current VOD implementations have no functionality to transport multimedia content to client systems at a frame rate faster than the client system may display the multimedia content. This might be beneficial in cases where a client system is identified as including a hard disk or other storage device and may store multimedia content for later playback.
Protocols associated with the transport of multimedia content, such as data in the MPEG-2 format, may be used to perform VCR-like functions. Conventional technologies for performing a VCR-like function may consume video on demand server and network resources. These resources may be consumed even though a client system includes the capability to perform the VCR-like function locally. For example, Digital Storage Media Command and Control (“DSM-CC”) and Real Time Streaming Protocol (“RTSP”) are two protocols commonly used in the transport of multimedia content in a VOD environment. Typically, when a pause function is executed using either of these protocols, transport of multimedia content from a video on demand server to a client system is stopped. However, the session between the video on demand server and the client system persists. That is, a video on demand server must continue to allocate resources to maintain a session with the client system and associated networks must continue to allocate network bandwidth to the session.
FIG. 1 illustrates an example of how portions of bandwidth resources may remain allocated even though no multimedia content is being transported. Shown in FIG. 1 is the duration of program A and program B. These programs may be different program stream program identifiers (“PIDs”) that are one a single transport stream, and may be allocated to different VOD programs for two different users. Portions of bandwidth may remain allocated for transport of program B during the pause. This is the case since allowing other VOD session programs to transmit data on those PIDs would mean the PIDs would not be available when the user unpauses. Even though no multimedia content associated with program B is transported during the pause, program A continues to receive only one-half of the available bandwidth and the other one-half is unused.
One solution to the requirement that network bandwidth remain allocated during a pause, is to terminate a session that has been paused for a predetermined amount of time. This releases video on demand server resources and network bandwidth allocated to a session. Another solution is to not reserve any bandwidth when programming is paused. However, both of these solutions may result in dissatisfaction to a user who pauses a program and returns to discover that the transport of multimedia content was terminated as a result of the pause operation and/or they must wait for more bandwidth to become available. The termination of transport of multimedia content may occur even if an associated client system included the capability to store multimedia content for later viewing.
Therefore, what are desired are systems, methods, and computer program products for modifying the behavior of a multimedia transport system in response to capabilities of a client system.